#ifndef QOSMEASUREMENTRECORD
#define QOSMEASUREMENTRECORD

#include <iostream>
#include <time.h>

#include "liveMedia.hh"
#include "BasicUsageEnvironment.hh"
#include "GroupsockHelper.hh"

using namespace std;

class qosMeasurementRecord
{
public:
	qosMeasurementRecord(struct timeval const& startTime, RTPSource* src);
	virtual ~qosMeasurementRecord();

	void periodicQOSMeasurement(struct timeval const& timeNow);

	RTPSource* fSource;
	qosMeasurementRecord* fNext;

	struct timeval measurementStartTime;
	struct timeval measurementEndTime;
	double kbits_per_second_min;
	double kbits_per_second_max;
	double kBytesTotal;
	double packet_loss_fraction_min;
	double packet_loss_fraction_max;
	unsigned int totNumPacketReceived;
	unsigned int totNumPacketExpected;
};

#endif
